package com.iwhalecloud.citybrain.flow.platform.manager.common.client;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;
import java.util.List;

/**
　　* @description: 根据条件查询对应处理人的流程实例信息列表请求实体
　　* @author shenrm
　　* @date 2021/10/20 11:02
　　*/
@Data
public class HttpProcessInstanceHandleRelDto extends HttpPageableQueryDto {

    /**
     * 序列化
     */
    private static final long serialVersionUID = 3153294909208564402L;

    /**
     * 流程实例id集合
     */
    private List<String> processInstanceIds;

    /**
     * 流程实例id
     */
    private String processInstanceId;

    /**
     * 阅办人ID
     */
    private String readCopyTo;

    /**
     * 任务节点id集合
     */
    private List<String> taskIds;

    /**
     * 任务节点id
     */
    private String taskId;

    /**
     * 处理类型
     */
    private String handleType;

    /**
     * 处理状态
     */
    private Integer status;

    /**
     * 排序条件字段
     */
    private String orderByClause;

    /**
     * 发送人编码
     */
    private String sendUserCode;

    /**
     * 发送人名称
     */
    private String sendUserName;

    /**
     * 阅办人员信息集合,当前包括具体人员、组织、角色、用户组和岗位
     */
    private List<HttpReadDoUsersDto> readDoUsers;

    /**
     * 应完成时间
     */
    @JsonFormat(locale = "zh", timezone = "GMT+8", pattern = "yyyy-MM-dd")
    private Date shouldCompleteTime;

    /**
     * 意见
     */
    private String comment;

    /**
     * 来源应用编码
     */
    private String sourceAppCode;

    /**
     * 业务编码
     */
    private String businessCode;

    /**
     * 业务模块编码
     */
    private String businessModuleCode;

    /**
     * 表单模块编码
     */
    private String formModuleCode;

    /**
     * 无参的构造函数调用父类的方法进行设置commonCode
     */
    public HttpProcessInstanceHandleRelDto() {
        super.setCommandCode("processInstanceHandleRel");
    }
}
